/*1.exports导出和require导入*/
// 注意：在node中一个文件就是一个模块,exports导出的就是这文件模块，并且commomjs是同步导入执行的

// const a = require("./first.js");
// console.log(a.add(10, 20));
// console.log('a是：', a);

/*2.module.exports导出和require导入*/
// const a = require("./first.js");
// console.log(a.greeting('zhangsan'));
// console.log(a);

// const a = require('./first');
// console.log('第三种导入模块的方式：', a, a.sayHello('zhoumingle'));




/*3.fs系统模块：读取文件、写入文件*/
// const fs = require("fs");
// fs.readFile("./first.js", "utf8", (err, doc) => {
//     if (err) throw Error(err);
//     console.log(err);
//     console.log(doc);
// });

// const b = "正在使用文件处理模块的写入操作写入的内容-----!!!";
// fs.writeFile("./write.txt", b, err=>{
//     if(err != null){
//         console.log(err);
//         return;
//     };
//     console.log("写入成功！");
//     fs.readFile('./write.txt', 'utf-8', function(err, res) {
//        !err && console.log('读取write.txt文件的内容：', res);
//     }); 
// });




/*4.path系统模块：拼接路径、绝对路径vs相对路径*/
const path = require("path");
const finalpath = path.join("public", "uploads", "avatar");
// console.log(finalpath);

const fs=require("fs");
// console.log(__dirname);
// console.log(path.join(__dirname, "first.js"));
// fs.readFile(path.join(__dirname, "first.js"), "utf8", (err, doc)=>{
//     console.log(err);
//     console.log(doc);
// })


/*5.第三方模块（包）：下载和卸载（npm install 模块名称、npm uninstall 模块名称）、nodemon模块
1、主要有两种存在形式：js文件类型和命令行工具形式存在；2、分为本地安装和全局安装，以命令行工具形式存在的模块基本上用全局安装*/




